</locale>
</schema>
+ <!-- Magnifier -->
+ <schema>
+ <key>/schemas/desktop/gnome/accessibility/magnifier/show_magnifier</key>
+ <applyto>/desktop/gnome/accessibility/magnifier/show_magnifier</applyto>
+ <owner>gnome-shell</owner>
+ <type>bool</type>
+ <default>false</default>
+ <locale name="C">
+ <short>Show or hide the magnifier</short>
+ <long>
+ Show or hide the magnifier and all of its zoom regions.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/desktop/gnome/accessibility/magnifier/mouse_tracking</key>
+ <applyto>/desktop/gnome/accessibility/magnifier/mouse_tracking</applyto>
+ <owner>gnome-shell</owner>
+ <type>int</type>
+ <default>1</default>
+ <locale name="C">
+ <short>Mouse Tracking Mode</short>
+ <long>
+ Determines the position of the magnified mouse image within
+ the magnified view and how it reacts to system mouse movement.
+ The values are 0 - none: no mouse tracking; 1 - centered: the
+ mouse image is displayed at the center of the zoom region
+ (which also represents the point under the system mouse) and the
+ magnified contents are scrolled as the system mouse moves; 2 -
+ proportional: the position of the magnified mouse in the zoom
+ region is proportionally the same as the position of the system
+ mouse on screen; or 3 - push: when the magnified mouse
+ intersects a boundary of the zoom region, the contents are
+ scrolled into view.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/desktop/gnome/accessibility/magnifier/screen_position</key>
+ <applyto>/desktop/gnome/accessibility/magnifier/screen_position</applyto>
+ <owner>gnome-shell</owner>
+ <type>int</type>
+ <default>3</default>
+ <locale name="C">
+ <short>Screen position</short>
+ <long>
+ The magnified view either fills the entire screen (1), or
+ occupies the top-half (2), bottom-half (3), left-half (4), or
+ right-half (5) of the screen.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/desktop/gnome/accessibility/magnifier/mag_factor</key>
+ <applyto>/desktop/gnome/accessibility/magnifier/mag_factor</applyto>
+ <owner>gnome-shell</owner>
+ <type>float</type>
+ <default>2.0</default>
+ <locale name="C">
+ <short>Magnification factor</short>
+ <long>
+ The power of the magnification. A value of 1.0 means no
+ magnification. A value of 2.0 doubles the size.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/desktop/gnome/accessibility/magnifier/lens_mode</key>
+ <applyto>/desktop/gnome/accessibility/magnifier/lens_mode</applyto>
+ <owner>gnome-shell</owner>
+ <type>bool</type>
+ <default>false</default>
+ <locale name="C">
+ <short>Enable lens mode</short>
+ <long>
+ Whether the magnified view should be centered over the location
+ of the system mouse and move with it.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/desktop/gnome/accessibility/magnifier/scroll_at_edges</key>
+ <applyto>/desktop/gnome/accessibility/magnifier/scroll_at_edges</applyto>
+ <owner>gnome-shell</owner>
+ <type>bool</type>
+ <default>false</default>
+ <locale name="C">
+ <short>Scroll magnified contents beyond the edges of the desktop</short>
+ <long>
+ For centered mouse tracking, when the system pointer is at
+ or near the edge of the screen, the magnified contents continue
+ to scroll such that the screen edge moves into the magnified
+ view.
+ </long>
+ </locale>
+ </schema>
+
+ <!-- Magnifier: Crosshairs -->
+ <schema>
+ <key>/schemas/desktop/gnome/accessibility/magnifier/show_cross_hairs</key>
+ <applyto>/desktop/gnome/accessibility/magnifier/show_cross_hairs</applyto>
+ <owner>gnome-shell</owner>
+ <type>bool</type>
+ <default>false</default>
+ <locale name="C">
+ <short>Show or hide crosshairs</short>
+ <long>
+ Enables/disables display of crosshairs centered on the magnified mouse
+ sprite.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/desktop/gnome/accessibility/magnifier/cross_hairs_thickness</key>
+ <applyto>/desktop/gnome/accessibility/magnifier/cross_hairs_thickness</applyto>
+ <owner>gnome-shell</owner>
+ <type>int</type>
+ <default>8</default>
+ <locale name="C">
+ <short>Thickness of the crosshairs</short>
+ <long>
+ Width of the vertical and horizontal lines that make up the
+ crosshairs.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/desktop/gnome/accessibility/magnifier/cross_hairs_color</key>
+ <applyto>/desktop/gnome/accessibility/magnifier/cross_hairs_color</applyto>
+ <owner>gnome-shell</owner>
+ <type>string</type>
+ <default>#ff0000</default>
+ <locale name="C">
+ <short>Color of the crosshairs</short>
+ <long>
+ The color of the the vertical and horizontal lines that make up
+ the crosshairs.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/desktop/gnome/accessibility/magnifier/cross_hairs_opacity</key>
+ <applyto>/desktop/gnome/accessibility/magnifier/cross_hairs_opacity</applyto>
+ <owner>gnome-shell</owner>
+ <type>int</type>
+ <default>169</default>
+ <locale name="C">
+ <short>Opacity of the crosshairs</short>
+ <long>
+ Determines the transparency of the crosshairs, from fully opaque
+ to fully transparent.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/desktop/gnome/accessibility/magnifier/cross_hairs_length</key>
+ <applyto>/desktop/gnome/accessibility/magnifier/cross_hairs_length</applyto>
+ <owner>gnome-shell</owner>
+ <type>int</type>
+ <default>4096</default>
+ <locale name="C">
+ <short>Length of the crosshairs</short>
+ <long>
+ Determines the length of the vertical and horizontal lines that
+ make up the crosshairs.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/desktop/gnome/accessibility/magnifier/cross_hairs_clip</key>
+ <applyto>/desktop/gnome/accessibility/magnifier/cross_hairs_clip</applyto>
+ <owner>gnome-shell</owner>
+ <type>bool</type>
+ <default>false</default>
+ <locale name="C">
+ <short>Clip the crosshairs at the center</short>
+ <long>
+ Determines whether the crosshairs intersect the magnified mouse
+ sprite, or are clipped such that the ends of the horizontal
+ and vertical lines surround the mouse image.
+ </long>
+ </locale>
+ </schema>
+
</schemalist>
</gconfschemafile>
#endif
#define SHELL_DBUS_SERVICE "org.gnome.Shell"
+#define MAGNIFIER_DBUS_SERVICE "org.gnome.Magnifier"
static void grab_notify (GtkWidget *widget, gboolean is_grab, gpointer user_data);
static void update_root_window_pixmap (ShellGlobal *global);
exit (1);
}
}
+
+ /* ...and the org.gnome.Magnifier service.
+ */
+ if (!dbus_g_proxy_call (bus, "RequestName", &error,
+ G_TYPE_STRING, MAGNIFIER_DBUS_SERVICE,
+ G_TYPE_UINT, 0,
+ G_TYPE_INVALID,
+ G_TYPE_UINT, &request_name_result,
+ G_TYPE_INVALID))
+ {
+ g_print ("failed to acquire %s: %s\n", MAGNIFIER_DBUS_SERVICE, error->message);
+ /* Failing to acquire the magnifer service is not fatal. Log the error,
+ * but keep going. */
+ }
g_object_unref (bus);
}
-static void
+static void
grab_notify (GtkWidget *widget, gboolean was_grabbed, gpointer user_data)
{
ShellGlobal *global = SHELL_GLOBAL (user_data);